from tvtk.api import tvtk

# 显示一个数据源：显示一个长方体实例

# 创建数据源
s = tvtk.CubeSource(x_length=1.0, y_length=2.0, z_length=3.0)

# 使用PolyDataMapper  将数据转化为图形数据,映射器
m = tvtk.PolyDataMapper(input_connection=s.output_port)
#  创建一个Actor,Action 实体
a = tvtk.Actor(mapper=m)
#  创建一个Renderer,将actor 加入进去
r = tvtk.Renderer(background=(0, 0, 0))
r.add_actor(a)
#  创建一个RendererWindow,将render加入进去
w = tvtk.RenderWindow(size=(600, 600))
w.add_renderer(r)
# 构建一个RenderWindowInteractor(窗口的交互工具)
i = tvtk.RenderWindowInteractor(render_window=w)
# 开启交互
i.initialize()
i.start()
